home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c-part1 / 8582 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  1.2 KB

  1. Path: druid.borland.com!usenet
  2. From: pete@borland.com (Pete Becker)
  3. Newsgroups: comp.lang.c
  4. Subject: Re: Problem with a for loop
  5. Date: 5 Mar 1996 00:09:23 GMT
  6. Organization: Borland International
  7. Message-ID: <4hg0nj$amq@druid.borland.com>
  8. References: <4h8g0l$1ot@nic.umass.edu>
  9. NNTP-Posting-Host: pbecker.borland.com
  10. Mime-Version: 1.0
  11. Content-Type: Text/Plain; charset=ISO-8859-1
  12. X-Newsreader: WinVN 0.99.5
  13.  
  14. In article <4h8g0l$1ot@nic.umass.edu>, ksexton@wilde.oit.umass.edu says...
  15. >
  16. >Hi.
  17. >I was doing a project for one of my classes and I came across a rather 
  18. >odd bug in part of the code.  I initially had the following:
  19. >for ( i = 0; WL[i] != NULL, i <= 10; i++ )
  20. >{
  21. >        AAL[i] = new char[strlen(WL[i])+1);
  22. >        strcpy(AAL[i], WL[i]);
  23. >}
  24. >
  25. >I realize that new belongs to C++, but that's not where the confusion 
  26. >lies.  WL is an array of pointers to strings.  WL[0]="./my_macro" and
  27. >WL[1]=NULL.  However, the for loop insists on continuing the loop even 
  28. >when i=1 and WL[i]=NULL.  Am I missing something?  I can't see what is 
  29. >wrong logically.  Any assistance would be much appreciated.  Thanx in 
  30. >advance.
  31.  
  32. Look carefully at the test condition in the for loop:
  33.  
  34.     WL[i] != NULL, i <= 10;
  35.  
  36. then think about what the comma operator does.
  37.     -- Pete
  38.  
  39.